package com.home.cop.employee.service;

import com.github.pagehelper.PageInfo;
import com.home.cop.employee.model.SysUser;

import java.util.List;
import java.util.Map;

public interface SysUserService {

    /**
     * 根据账号密码用户登录
     * @param account
     * @param pass
     * @return
     */
    public SysUser getUser(String account,String pass);

    /**
     * 按照条件查询系统用户列表
     * @param params
     * @param pageSize
     * @param pageNum
     * @return
     */
    public PageInfo<SysUser> list(Map<String,Object> params, int pageSize, int pageNum);

    /**
     * 根据电话号码获取用户
     * @param phone
     * @return
     */
    public List<SysUser> getUserByPhone(String phone);

    /**
     * 获取机构下的系统用户
     * @param instId
     * @return
     */
    public List<SysUser> getInstUsers(Integer instId);

    /**
     * 删除系统用户
     * @param account
     */
    public void deleteSysUser(String account);

    /**
     * 新增用户
     * @param user
     */
    public void insert(SysUser user);

    /**
     * 修改系统用户信息
     * @param user
     */
    public void updateUserInfo(SysUser user);

    /**
     * 启用/禁用用户
     * @param account
     * @param status
     */
    public void updateStatus(String account,Integer status);

    /**
     * 查询当前角色有无系统用户
     * @param roleId
     * @return
     */
    public Integer countUserByRoleId(Integer roleId);

    /**
     * 修改系统用户密码
     * @param account
     */
    public void updateUserPass(String account,String pass);

}
